Merged
Conversation
added 4 commits
January 18, 2026 20:28
## 주요 변경사항 ### API 레이어 - `fetchNoteState` API 메소드 추가 (MastodonHttpClient, MisskeyHttpClient, UnifiedApiClient) - `MastodonApi` 인터페이스에 `fetchNoteState` 선언 추가 - MisskeyHttpClient의 즐겨찾기/취소 로직 수정 (리액션 → 순수 즐겨찾기 API) - 누락된 북마크 관련 메소드 구현 ### UI 기능 - TimelineItem 더보기 메뉴에 즐겨찾기/취소 버튼 추가 - 메뉴 열 때 notes/state API로 즐겨찾기 상태 실시간 확인 - 즐겨찾기 성공/실패 시 토스트 알림 표시 - 상태별 적절한 API 호출 (create/delete) ### 기능 개선 - 즐겨찾기 상태 로컬 관리로 불필요한 API 호출 방지 - 마스토돈/미스키 통합 API 동작 - 정확한 즐겨찾기 취소 API 호출 (delete 사용) ### 수정된 이슈 - 즐겨찾기 시 좋아요(리액션)이 아닌 즐겨찾기로 동작 - 즐겨찾기 취소 시 delete API 사용 - API 호출 실패 시 에러 처리 및 토스트 알림
## 주요 변경사항 ### API 레이어 분리 - 마스토돈: 즐겨찾기(favourite) 기능 비활성화 - favourite(), unfavourite() 에러 throw - 북마크(bookmark) 기능만 유지 - 미스키: 북마크 기능 비활성화 - bookmark(), unbookmark(), fetchBookmarks() 에러 throw - 즐겨찾기(favourite) 기능만 유지 ### UI 플랫폼별 분기 - TimelineItem 더보기 메뉴에서 플랫폼별 버튼 표시 - 미스키: "즐겨찾기/즐겨찾기 취소" 버튼만 표시 - 마스토돈: "북마크/북마크 취소" 버튼만 표시 - handleMenuToggle: 미스키에서만 fetchNoteState 호출 ### 기능 개선 - 플랫폼에 맞는 기능만 제공으로 사용자 혼란 방지 - API 레벨에서 플랫폼별 기능 제한으로 일관성 확보 - 토스트 알림은 각 플랫폼에 맞게 표시 이제 미스키는 즐겨찾기만, 마스토돈은 북마크만 사용할 수 있습니다.
## 주요 변경사항 ### UI 개선 - 즐겨찾기 버튼을 항상 표시하되 API 응답 전까지 비활성화 상태 - 로딩 중 "로딩..." 텍스트 표시로 사용자 피드백 제공 - disabled 상태로 API 응답 대기 중 클릭 방지 ### 사용자 경험 향상 - 메뉴 열 때: 즐겨찾기 버튼이 "로딩..."으로 즉시 표시 - API 응답 후: 실제 상태(추가/취소)로 버튼 활성화 - 버튼 클릭 시: 메뉴 즉시 닫기로 딜레이 문제 해결 ### 기능 개선 - handleMenuToggle에서 상태 리셋 로직 추가 - API 실패 시 기본값 false로 설정하여 안정성 확보 - 비동기 처리로 UI 반응성 개선 이제 즐겨찾기 버튼이 갑자기 나타나는 현상 없이 자연스러운 로딩 상태를 제공합니다.
## 주요 변경사항 ### 토스트 톤 수정 - App.tsx: 북마크 추가/취소 토스트를 성공 상태(tone: "success")로 변경 - ProfileModal.tsx: 북마크 추가/취소 토스트를 성공 상태(tone: "success")로 변경 ### 기능 개선 - 기존 일반 토스트에서 초록색 성공 토스트로 변경 - 즐겨찾기 토스트와 일관된 성공 피드백 제공 - 중복 토스트 문제 해결 및 TimelineItem 코드 정리 ### 사용자 경험 - 북마크 성공 시 시각적으로 명확한 성공 피드백 제공 - 일관된 톤으로 사용자 경험 향상 - 안정적인 토스트 동작 보장
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
미스키 게시물 즐겨찾기 기능을 구현하고, 플랫폼별 즐겨찾기/북마크 기능을 분리하여 사용자 경험을 개선했습니다.
🎯 주요 기능
🔧 기술 구현
📱 사용자 경험
🔍 변경 파일
src/infra/: API 클라이언트 플랫폼별 분리src/ui/components/TimelineItem.tsx: UI 개선 및 토스트 연동Test Plan